package negocio;

import modelo.Empresa;
import persistencia.DAOEmpresa;
import exception.ImpossivelCompletarTarefaException;

public class FachadaEmpresa {

	private DAOEmpresa daoEmpresa = new DAOEmpresa();

		public void inserirEmpresa(Empresa empresa) throws ImpossivelCompletarTarefaException{
			Empresa empresaInserido = daoEmpresa.buscarEmpresa(empresa.getCnpj());
			if (empresaInserido != null){
				throw new ImpossivelCompletarTarefaException("Já existe uma Empresa cadastrado com esse CNPJ: " + empresa.getCnpj());
			}
			daoEmpresa.inserir(empresa);
		}
	
		
		public void atualizarEmpresa(Empresa empresa) throws ImpossivelCompletarTarefaException{
			Empresa empresaInserido = daoEmpresa.buscarEmpresa(empresa.getCnpj());
			if (empresaInserido == null){
				throw new ImpossivelCompletarTarefaException("Não existe uma Empresa cadastrado com este CNPJ: " + empresa.getCnpj());
			}
			daoEmpresa.atualizar(empresa);
		}
		
		public void excluirEmpresa(Empresa empresa) throws ImpossivelCompletarTarefaException{
			Empresa empresaInserido = daoEmpresa.buscarEmpresa(empresa.getCnpj());
			if (empresaInserido == null){
				throw new ImpossivelCompletarTarefaException("Não existe uma Empresa cadastrado com este CNPJ: " + empresa.getCnpj());
			}
			daoEmpresa.excluir(empresa);
		}
		
		public Empresa buscarEmpresa(String cnpj) throws ImpossivelCompletarTarefaException{
			Empresa empresaInserido = daoEmpresa.buscarEmpresa(cnpj);
			if (empresaInserido == null){
				throw new ImpossivelCompletarTarefaException("Não existe uma Empresa cadastrado com este CNPJ: " + cnpj);
			}
			return empresaInserido;
		}
		
}

